package com.och.mrcp.service;

import com.och.mrcp.config.EngineConfig;
import com.och.mrcp.core.rtp.session.RtpSession;
import com.och.mrcp.model.SynthesisResult;

import java.util.concurrent.CompletableFuture;

/**
 * TTS 合成服务策略接口
 * 各厂商实现此接口以接入统一合成流程
 */
public interface TtsSynthesisService {

	/**
	 * 返回提供商名称（如 aliyun、tencent 等），用于策略选择
	 */
	String getProviderName();

	/**
	 * 服务是否可用（鉴权/客户端就绪）
	 */
	boolean isAvailable();

	/**
	 * 执行语音合成
	 */
	CompletableFuture<SynthesisResult> synthesize(String sessionId,
			String text,
			EngineConfig.SynthesisConfig config,
			RtpSession rtpSession);
}


